Saltar al contenido principal

Configuración de Metadatos

Esta guía muestra cómo configurar metadatos para las imágenes de su OV20i. Los metadatos son información adicional que se almacena con cada imagen capturada, lo que ayuda a rastrear detalles importantes como números de pieza, números de serie o datos de producción.

Cuándo usar metadatos: Seguimiento de la producción, identificación de piezas, registros de control de calidad, información de lote, identificación del operador o cualquier dato personalizado que necesite asociar con las imágenes de inspección.

Prerrequisitos

  • Sistema de cámara OV20i configurado y conectado
  • Receta activa configurada con configuración de imagen y de inspección
  • Al menos un bloque de AI (clasificación o segmentación) configurado
  • Comprensión de los datos que desea rastrear a partir de los resultados de la inspección

¿Qué son los metadatos?

Los metadatos son información adicional que se adjunta a cada imagen capturada. Esta información:

  • Se almacena junto con la imagen en la biblioteca de la cámara
  • Aparece en la HMI para que los operadores los vean
  • Ayuda a identificar y rastrear piezas específicas o lotes de producción
  • Se pueden buscar en la biblioteca para análisis

Ejemplos de metadatos útiles:

  • Part numbers (p. ej., "P12345")
  • Serial numbers (p. ej., "SN987654")
  • Operator names (p. ej., "John_Smith")
  • Shift information (p. ej., "A_Shift")
  • Batch numbers (p. ej., "Batch_2025_001")
nota

Los metadatos se pueden guardar únicamente cuando se completa una inspección. Los metadatos deben formar parte del flujo que comienza desde "All Block Outputs" después de que la cámara capture y procese una imagen.

Paso 1: Acceder al Editor de Node-RED

1.1 Navegar al IO Block

  1. Abra su receta activa en el Editor de Recetas
  2. Haga clic en Configurar IO o seleccione IO Block en el menú de migas de pan para ingresar al Editor de Node-RED

1.2 Verificar la Interfaz de Node-RED

Punto de control: Debería ver el editor de flujo de Node-RED con el flujo del IO Block existente y la paleta de nodos en el lado izquierdo.

Paso 2: Localizar el nodo "All Block Outputs"

2.1 Encontrar el Punto de Inicio

En su flujo de Node-RED, busque el nodo "All Block Outputs". Este es el punto de inicio que recibe datos de la cámara después de que se dispara y se procesa una inspección.

  • El nodo "All Block Outputs":
    • Contiene resultados de inspección de todos los bloques de AI
    • Incluye información de captura de imágenes
    • Proporciona los datos necesarios para la creación de metadatos
    • Es la fuente que alimenta tanto la creación de metadatos como las decisiones de pase/fallo

2.2 Comprender la Estructura del Flujo

Su flujo debe seguir este patrón:

Camera Trigger → AI Processing → All Block Outputs → [Your Custom Logic]

Desde "All Block Outputs" se requieren dos rutas separadas:

  1. Ruta de Metadatos: All Block Outputs → Function (Create Metadata) → Capture Metadata
  2. Ruta de Decisión: All Block Outputs → Function (Logic) → Final Pass/Fail
nota

Tanto los metadatos como las decisiones de pase/fallo deben ramificarse desde el nodo "All Block Outputs".

Paso 3: Agregar Capture Metadata Node

3.1 Localizar el nodo Metadatos

  1. Encuentre el nodo "Capture Metadata" en el panel izquierdo (sección Overview)
  2. Arrastre el nodo "Capture Metadata" al lienzo del flujo
  3. Colóquelo en su flujo después del disparador pero antes de la captura de imágenes

3.2 Colocación de nodos en el flujo

Estructura de flujo correcta:

All Block Outputs → Function (Create Metadata) → Capture Metadata

Function (Pass/Fail Logic) → Final Pass/Fail

aviso

El nodo "Final Pass/Fail" es requerido para que el flujo funcione correctamente. Todo flujo debe terminar con este nodo.

::

Paso 4: Configurar Campos de Metadatos

4.1 Configurar Metadatos Básicos

  1. Haga doble clic en el nodo Capture Metadata
  2. Configure los campos de metadatos que desea rastrear
  3. Configure las fuentes de datos para cada campo

4.2 Requisitos de Formato de Metadatos

Importante

Los metadatos deben estar formateados como un objeto con:

  • Claves de tipo String - Los nombres de los campos deben ser texto
  • Valores de tipo String o Number - Los datos pueden ser texto o números

Ejemplo de formato correcto:

{
"part_number": "P12345",
"serial_number": "SN987654",
"operator": "John_Smith",
"shift": "A",
"quantity": 100,
"temperature": 23.5
}

Paso 5: Crear Nodo de Función de Metadatos

5.1 Añadir Nodo de Función para la Creación de Metadatos

  1. Añada un "function" nodo entre "All Block Outputs" y el nodo "Capture Metadata"
  2. Haga doble clic en el nodo de función para configurarlo
  3. Esta función extraerá datos de los resultados de inspección y creará metadatos

5.2 Extraer Datos de "All Block Outputs"

El nodo "All Block Outputs" proporciona datos de inspección detallados. Así es como extraerlos:

// Extract data from inspection results
const captureId = msg.payload.capture_id;
const serialNumber = msg.payload.serial_number || "No_Serial";
const inspectionTime = msg.payload.inspection_time || new Date().toISOString();

// Create metadata from inspection data
msg.payload = {
"capture_id": captureId,
"serial_number": serialNumber,
"inspection_time": inspectionTime,
"operator": global.get("current_operator") || "Unknown"
};
return msg;

5.3 Metadatos estáticos (Valores fijos)

Para información que no cambia durante la producción:

// Set static metadata values
msg.payload = {
"recipe_name": "Bolt_Inspection_v2",
"line_number": "Line_3",
"shift": "A_Shift",
"station": "QC_Station_1"
};
return msg;

5.4 Metadatos dinámicos (utilizando datos de inspección)

Para la información que proviene de los resultados de inspección:

// Extract inspection data
const captureId = msg.payload.capture_id;
const imageUrl = msg.payload.image_url;
const predictions = msg.payload.classification?.predictions || [];

// Create dynamic metadata
msg.payload = {
"capture_id": captureId,
"part_number": "P" + Date.now(),
"total_rois": predictions.length,
"timestamp": new Date().toISOString(),
"batch": global.get("current_batch") || "Default_Batch"
};
return msg;

Paso 6: Conectar Metadatos y Flujos de Pass/Fail

6.1 Estructura de Flujo Requerida

Cada flujo debe tener ambas rutas desde "All Block Outputs":

All Block Outputs → Function (Create Metadata) → Capture Metadata

Function (Pass/Fail Logic) → Final Pass/Fail

6.2 Conectar la Ruta de Metadatos

  1. Conectar la salida de "All Block Outputs" a la entrada de la función de metadatos
  2. Conectar la salida de la función de metadatos a la entrada de "Capture Metadata"
  3. El nodo Capture Metadata puede ser un nodo terminal (no se necesita una conexión de salida)

6.3 Conectar la Ruta de Pass/Fail

  1. Conectar la salida de "All Block Outputs" a una función lógica de pass/fail
  2. Conectar la salida de la función lógica a la entrada de "Final Pass/Fail"
  3. El nodo "Final Pass/Fail" es obligatorio - cada flujo debe terminar aquí

6.4 Ejemplo de Lógica de Aprobación/Rechazo

// Extract inspection result for pass/fail decision
const predictions = msg.payload.classification?.predictions || [];

// Determine if inspection passed (all ROIs passed)
let passed = true;
for (let prediction of predictions) {
if (!prediction.predicted_class.includes("pass")) {
passed = false;
break;
}
}

// Set the pass/fail result
msg.payload = passed;
return msg;

Paso 7: Configuración de Metadatos de Prueba

7.1 Despliegue y Prueba

  1. Haga clic en el botón 'Despliegue' (esquina superior derecha)
  2. Inicie una inspección mediante su método de disparo configurado (manual, entrada digital o PLC)
  3. Verifique que:
    • Se capturó una imagen
    • Los metadatos aparecen junto con la imagen
    • Se tomó una decisión de Aprobado/Rechazado
    • El flujo se completó correctamente

7.2 Verificar Flujo Completo

Verifique que ambos caminos funcionen:

Ruta de Metadatos:

  • Navegue a Library en la interfaz principal
  • Encuentre su imagen de prueba
  • Verifique que los metadatos aparezcan en los detalles de la imagen

Ruta Aprobado/Rechazado:

  • Verifique que los resultados de la inspección muestren el estado Aprobado/Rechazado
  • Verifique que el nodo "Final Pass/Fail" se haya procesado correctamente
  • Confirme cualquier salida conectada (PLCs, indicadores) responda adecuadamente

7.3 Probar Diferentes Fuentes de Disparo

Verifique que los metadatos funcionen con su disparo específico:

Para Disparos Manuales:

  • Utilice el botón de disparo por software
  • Verifique que los metadatos aparezcan en cada captura manual

Para Disparos por Entrada Digital:

  • Active el sensor/interruptor externo
  • Confirme que los metadatos se capturen con las imágenes disparadas

Para Disparos de PLC:

  • Envíe la señal de disparo desde PLC
  • Verifique que los metadatos incluyan datos del PLC cuando corresponda

Paso 8: Configuraciones Avanzadas de Metadatos

8.1 Metadatos de Múltiples Variables Globales

Combinar datos de diferentes fuentes almacenadas a nivel global:

// Combine data from various global storage
const operatorData = global.get("operator_info") || {};
const productData = global.get("product_info") || {};
const shiftData = global.get("shift_info") || {};

msg.payload = {
"operator": operatorData.name || "Unknown",
"operator_id": operatorData.id || "000",
"product_code": productData.code || "Default",
"product_version": productData.version || "1.0",
"shift": shiftData.current || "Day",
"line_status": "Running",
"timestamp": new Date().toISOString()
};
return msg;

Paso 9: Solución de Problemas de Metadatos

9.1 Problemas Comunes

ProblemaSíntomasSolución
Metadatos no aparecenNo hay datos en LibraryVerifique que el nodo de metadatos esté en el flujo IO Block principal
Metadatos con imagen incorrectaLos datos aparecen en capturas incorrectasVerifique la temporización: los metadatos deben ir antes de la captura de la imagen
Disparo no funcionaNo se capturan imágenesVerifique la configuración del disparador IO Block
Faltan campos de metadatosFaltan algunos datosVerifique el formato de la carga del nodo de función
Error de tipo de datos incorrectoEl nodo muestra estado de errorAsegúrese de que los valores sean solo cadenas o números

9.2 Depuración del Flujo de Metadatos

Agregue nodos de depuración para la resolución de problemas:

  1. Agregue un nodo de depuración después del disparador para verificar que el disparador funcione
  2. Agregue un nodo de depuración después de la función de metadatos para verificar el payload
  3. Agregue un nodo de depuración después de Capture Metadata para confirmar el procesamiento
  4. Verifique el panel de depuración en busca de mensajes de error

Paso 10: Mejores Prácticas

10.1 Diseño de Flujo

Diseñe flujos de metadatos eficientes:

  • Mantenga los metadatos al inicio del flujo - Configure los metadatos inmediatamente después del disparador
  • Use un solo nodo de metadatos - No duplique nodos Capture Metadata
  • Mantenga la continuidad del flujo - Los metadatos deben formar parte del flujo principal de inspección
  • Maneje los datos faltantes - Siempre proporcione valores predeterminados

10.2 Nombres de Campos de Metadatos

Utilice nombres de campos consistentes y claros:

  • Utilice guiones bajos en lugar de espacios ("part_number" en lugar de "part number")
  • Sea descriptivo pero conciso ("operator" no "op")
  • Utilice minúsculas para mantener la consistencia
  • Evite caracteres especiales que podrían causar problemas

10.3 Consideraciones de Rendimiento

Para una producción de alto volumen:

  • Minimice el tamaño de metadatos - Incluya solo la información necesaria
  • Utilice tipos de datos eficientes - Números cuando sea posible, cadenas cortas
  • Evite procesamiento complejo - Mantenga la creación de metadatos simple y rápida
  • Cache de datos globales - Almacene datos de uso frecuente en variables globales

¡Éxito! Su sistema de metadatos está listo

La configuración de metadatos ya puede:

✅ Adjunte información personalizada a cada captura de imagen disparada

✅ Registre datos de producción sincronizados con el flujo de inspección

✅ Almacene información buscable en la biblioteca de la cámara

✅ Muestre datos relevantes en el HMI para operadores

✅ Soporte la trazabilidad para los requisitos de fabricación

Mantenimiento Continuo

Verificaciones Regulares del Sistema

  • Verifique que los metadatos aparezcan junto con las capturas disparadas
  • Compruebe la presencia de datos faltantes en las ejecuciones de producción
  • Monitoree el rendimiento del flujo con altas tasas de disparo
  • Actualice los campos de metadatos a medida que cambien los requisitos

Gestión del Flujo

  • Revise la temporización de metadatos en la producción
  • Optimice el rendimiento de los nodos de función
  • Actualice la gestión de variables globales
  • Capacite a los operadores en la operación basada en disparadores

Próximos Pasos

Después de configurar metadatos basados en disparadores:

  1. Pruebe con todos los tipos de disparo configurados (manual, digital, PLC)
  2. Capacite a los operadores en el uso adecuado de los disparadores para la captura de metadatos
  3. Configure la gestión de variables globales para datos dinámicos
  4. Cree plantillas de metadatos para diferentes líneas de producto
  5. Implemente el monitoreo de la producción mediante analítica de metadatos

🔗 Véase También